package com.duanjw.springframework.ioc.lifecycle.service;

import com.duanjw.springframework.ioc.lifecycle.dao.UserDao;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Service;

/**
 * @author duanjw
 */
@Service
public class UserServiceImpl {

//    /**
//     * 方式1：使用@Autowired注入spring bean，但是更建议使用有参构造初始化
//     * 如果一个接口有多个实现，可以使用@Qualifier指定要注入的bean name
//     */
//    @Autowired
//    @Qualifier("userDaoImpl1")

    private UserDao userDao;

    /**
     * 方式2：使用构造方法输入bean，推荐使用
     *
     * @param userDao
     */
    public UserServiceImpl(UserDao userDao) {
        this.userDao = userDao;
    }

    public void show() {
        System.out.println(userDao.hashCode());
    }
}
